// pages/message/index.js
import api from '../../api/index';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    isLoading: false,
    isComplete: false,
    list: [],
    pageNo: 1,


  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.getMessage();
  },
  //删除
  msmsgDelByIdgById(e) {
    let {
      id,
      index
    } = e.currentTarget.dataset;
    api.msmsgDelByIdgById(id).then(res => {
      this.data.list.splice(index, 1);
      this.setData({
        list: this.data.list
      })
    })
  },
  //单个标记已读
  msgById(e) {
    let {
      item,
      index
    } = e.currentTarget.dataset;
    if (!item.state) {
      api.msgById(item.id).then(res => {
        this.data.list[index].state = 1;
        this.setData({
          list: this.data.list
        })
      })
    }

  },
  //标记已读
  alreadyRead() {
    api.alreadyRead().then(res => {
      this.setData({
        isLoading: false,
        isComplete: false,
        list: [],
        pageNo: 1,
      })
      this.getMessage();
    })
  },

  //获取消息列表
  getMessage() {
    this.setData({
      isLoading: true
    })
    api.getMessage({
      pageNo: this.data.pageNo
    }).then(res => {
      let data = res.data.data.records.map(item => {
        item.scrollLeft = 0
        return item;
      })
      console.log(data)
      this.setData({
        list: this.data.list.concat(data),
        isLoading: false,
        isComplete: !res.data.data.records.length,
        pageNo: ++this.data.pageNo
      })
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    !this.data.isComplete && !this.data.isLoading && this.getMessage();
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})